package cn.tt.tuantuanerp.tuantuanerp.warehouse.service;


import cn.tt.tuantuanerp.tuantuanerp.comment.pojo.dto.WarehouseCheckDTO;
import cn.tt.tuantuanerp.tuantuanerp.comment.pojo.vo.WarehouseCheckVO;
import cn.tt.tuantuanerp.tuantuanerp.comment.security.LoginPrincipal;
import cn.tt.tuantuanerp.tuantuanerp.comment.web.JsonPage;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * 处理库存盘点数据的业务接口
 *
 * @author java@杨波
 * @version 0.0.1
 */
@Transactional
public interface IWarehouseCheckService {
    /**
     * 进入主页面直接展示的盘点批次列表
     * 已测试
     * @param
     * */
    JsonPage<WarehouseCheckVO> list(Integer startIndex, Integer pageSize);

    /**
     * 用户点击编号后,进入详情页面时展示的盘点信息
     * 已测试
     * @param id 浏览器发送过来点击时的编号
     */
    WarehouseCheckVO getStandardById(Long id);
    /**
     * 新增盘点批次时向页面返回合适的编号
     * 已测试
     * @param
     */
    Long returnID(LoginPrincipal loginPrincipal);
    /**
     * 新增盘点表
     * 已测试
     * @param warehouseCheckDTO   浏览器发送的库存盘点信息
     */
    void addNew(WarehouseCheckDTO warehouseCheckDTO);

    /**
     * 新增盘点表
     * 已测试
     * @param checkWarehouseId   浏览器发送的要修改审批状态的盘点批次
     */
    void setCheckPass(Long checkWarehouseId);
}
